待望のルートアクセス管理に関する設定変更(無効化や委任アカウント削除)はマネジメントコンソールのどこから出来ますか?
昨年、メンバーアカウントのルートユーザー認証情報管理とルートユーザー権限が必要なタスク(特権アクション)を管理アカウントまたは委任したメンバーアカウントで実行可能となる「ルートアクセス管理」機能がリリースされました。
本記事では「有効化してみたけど、やはり無効化したい。委任したアカウントを削除したい時は、マネジメントコンソールのどこで設定変更するのか」を紹介していきます。
そうなんです。私がどこから変更するのか、迷子になってしまったのです...
安心してください。すぐそこにあります。(ありました)
事前準備
機能の有効化や具体的な利用方法は、前述のブログをご確認ください。
今回は3つのアカウントを用意しました。
- 管理アカウント:organization | アカウントID の末尾が 35
- メンバーアカウント(委任予定):sandbox01 | アカウントID の末尾が 30
- メンバーアカウント:sandbox02 | アカウントID の末尾が 37
有効化前(無効化状態)の画面
IAM -> ルートアクセス管理 を選択
- 管理アカウント
- メンバーアカウント(委任予定)
- メンバーアカウント
有効化
ルートアクセス管理機能の有効化は、管理アカウントのマネジメントコンソールとAWS CLI, API から可能です。マネジメントコンソールの場合は『ルートアクセス管理』と『アカウント設定』のどちらからでも設定画面へ遷移できます。
(↑↑↑ ここ大事です ↑↑↑)
- ルートアクセス管理 -> 有効化 を選択
- アカウント設定 -> メンバーアカウントのための一元化されたルートアクセス -> 有効化 を選択
「機能」は変更せずにそのまま ->「一元化されたルートアクセスの委任された管理者」に "2. メンバーアカウント(委任予定)" のアカウントIDを入力 -> 有効化 を選択
ルートアクセス管理機能が有効化になりました。
AWS CLI で実行する場合には、機能を有効化するためのコマンド(3つ) と 委任するためのコマンド(1つ)を実行します。
aws organizations enable-aws-service-access --service-principal iam.amazonaws.com
aws organizations register-delegated-administrator --account-id XXXXXXXXXXX --service-principal iam.amazonaws.com
aws iam enable-organizations-root-credentials-management
aws iam enable-organizations-root-sessions
参考情報:
- Centrally managing root access for customers using AWS Organizations
- enable-aws-service-access
- register-delegated-administrator
- enable-organizations-root-credentials-management
- enable-organizations-root-sessions
有効化後の状況確認
各アカウントのルートアクセス管理機能画面を確認していきます。
-
管理アカウント
有効化され、アカウント情報が表示(見やすいリスト形式にしています)
"3. メンバーアカウント" に対して S3 バケットポリシーを削除の実行画面まで遷移
-
メンバーアカウント(委任予定)
委任がされているため、管理アカウントと同じ情報が表示
同じく "3. メンバーアカウント" に対して S3 バケットポリシーを削除の実行画面まで遷移
-
メンバーアカウント
有効化前と同様に権限がないため、利用不可の状態
各コマンドでも確認しておきます。
$ aws iam list-organizations-features
{
"OrganizationId": "o-xxxxxxxxxx",
"EnabledFeatures": [
"RootSessions",
"RootCredentialsManagement"
]
}
$ aws organizations list-aws-service-access-for-organization
{
"EnabledServicePrincipals": [
{
"ServicePrincipal": "compute-optimizer.amazonaws.com",
"DateEnabled": "2024-06-26T05:19:43.724000+00:00"
},
{
"ServicePrincipal": "cost-optimization-hub.bcm.amazonaws.com",
"DateEnabled": "2023-12-25T05:39:10.926000+00:00"
},
{
"ServicePrincipal": "health.amazonaws.com",
"DateEnabled": "2023-12-04T00:28:41.519000+00:00"
},
{
"ServicePrincipal": "iam.amazonaws.com",
"DateEnabled": "2025-01-08T06:10:17.469000+00:00"
},
{
"ServicePrincipal": "member.org.stacksets.cloudformation.amazonaws.com",
"DateEnabled": "2024-06-03T09:00:44.197000+00:00"
},
$ aws organizations list-delegated-services-for-account --account-id XXXXXXXXXXXX
{
"DelegatedServices": [
{
"ServicePrincipal": "iam.amazonaws.com",
"DelegationEnabledDate": "2025-01-08T05:46:51.600000+00:00"
},
{
"ServicePrincipal": "procurement-insights.marketplace.amazonaws.com",
"DelegationEnabledDate": "2024-10-10T13:39:46.761000+00:00"
},
{
"ServicePrincipal": "securityhub.amazonaws.com",
"DelegationEnabledDate": "2024-07-30T04:25:13.751000+00:00"
}
]
}
前置きが長くなりましたが、このように有効化して、利用することが出来ます。
各種設定の変更(無効化)
それでは、本題である。マネジメントコンソールで機能の無効化や委任アカウントを削除したい場合はどこから変更するのか?ですが、実は既に答えが出ています。
本記事を少し巻き戻すと...
はい!ここに「無効化」「削除」「更新」ボタンがあります!そうです。設定変更は管理アカウントの「アカウント設定」から実施することが出来ます。
「ルートアクセス管理」の画面は実行画面であり、設定変更を行うボタン等は用意されていません。(2025/1/8 時点)
※ ドキュメントでは、有効化の方法は記述されていましたが、無効化に関する記述は確認出来ませんでした。(2025/1/8 時点)
委任アカウントの削除
一元化されたルートアクセスの委任された管理者 -> 削除 -> 確認を入力して、削除 を選択
委任アカウントが削除されました。
$ aws organizations list-delegated-services-for-account --account-id XXXXXXXXXXXX
{
"DelegatedServices": [
{
"ServicePrincipal": "procurement-insights.marketplace.amazonaws.com",
"DelegationEnabledDate": "2024-10-10T13:39:46.761000+00:00"
},
{
"ServicePrincipal": "securityhub.amazonaws.com",
"DelegationEnabledDate": "2024-07-30T04:25:13.751000+00:00"
}
]
}
各機能の無効化
ルート認証情報管理 -> 無効化 -> 確認を入力して、無効化 を選択
$ aws iam list-organizations-features
{
"OrganizationId": "o-XXXXXXXXXX",
"EnabledFeatures": [
"RootSessions"
]
}
メンバーアカウントでの特権ルートアクション -> 無効化 -> 確認を入力して、無効化 を選択
両機能とも無効化になりました。
$ aws iam list-organizations-features
{
"OrganizationId": "o-XXXXXXXXXX",
"EnabledFeatures": []
}
ルートアカウント管理の無効化
メンバーアカウントのための一元化されたルートアクセス -> 無効化 -> 確認を入力して、無効化 を選択
全ての機能が無効化になりました。
「ルートアクセス管理」画面へ遷移すると有効化前の表示へ戻っています。
$ aws organizations list-aws-service-access-for-organization
{
"EnabledServicePrincipals": [
{
"ServicePrincipal": "compute-optimizer.amazonaws.com",
"DateEnabled": "2024-06-26T05:19:43.724000+00:00"
},
{
"ServicePrincipal": "cost-optimization-hub.bcm.amazonaws.com",
"DateEnabled": "2023-12-25T05:39:10.926000+00:00"
},
{
"ServicePrincipal": "health.amazonaws.com",
"DateEnabled": "2023-12-04T00:28:41.519000+00:00"
},
{
"ServicePrincipal": "member.org.stacksets.cloudformation.amazonaws.com",
"DateEnabled": "2024-06-03T09:00:44.197000+00:00"
},
新しい機能がリリースされるとワクワクして早く試したくなって、途中の画面を読み飛ばしてしまうことはありませんか?今回は、そんな私の性質ゆえの迷子かもしれませんが、同じような仲間がいれば、そんな方のお役に立てれば幸いです。